home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / u_man / cat1 / abild.z / abild
Encoding:
Text File  |  2002-10-03  |  14.3 KB  |  271 lines

  1. abild(1)                                              Last changed: 1-28-99
  2.  
  3.  
  4. NNAAMMEE
  5.      aabbiilldd - ABI link editor
  6.  
  7. SSYYNNOOPPSSIISS
  8.      aabbiilldd [--aa] [--BB _a_r_g_u_m_e_n_t] [--dd _l_i_n_k] [--ee] [--GG] [--II_n_a_m_e]] [[--LL_p_a_t_h]] [[--ll_x]]
  9.      [[--mm]] [[--oo_o_u_t_f_i_l_e]] [[--QQ _i_d] [--rr] [--ss] [--tt] [--uu_s_y_m_n_a_m_e]] [[--vv]] [[--VV]] [[--XX _a_r_g]
  10.      [--zz _s_y_m]] [[--WWll,,_a_r_g_s[[,,_a_r_g_l_i_s_t]] _f_i_l_e_n_a_m_e
  11.  
  12. IIMMPPLLEEMMEENNTTAATTIIOONN
  13.      IRIX systems
  14.  
  15. DDEESSCCRRIIPPTTIIOONN
  16.      aabbiilldd is a wrapper shell script for lldd for link editing MMIIPPSS AABBII
  17.      applications.  It translates a common subset of the SVR4 Software
  18.      Generation System (SGS) flags and arguments to those of the native
  19.      IRIS Development Option (IDO).  By the use of this wrapper,
  20.      applications that link on-site on a target platform are isolated from
  21.      having to know the details of invoking that platform's compilation
  22.      system.
  23.  
  24.      aabbiilldd also serves to hide the details of constructing an ABI
  25.      application on IRIX.  The details of exactly how the native lldd
  26.      constructs an ABI application could change, so to insure portability
  27.      aabbiilldd should be used to link all ABI-compliant programs.
  28.  
  29.      The options in the following list are recognized by aabbiilldd.  Options
  30.      that are not applicable are generally silently ignored.  Further
  31.      details are available in the _U_N_I_X _S_y_s_t_e_m _V _R_e_l_e_a_s_e _4 _P_r_o_g_r_a_m_m_e_r'_s
  32.      _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l.
  33.  
  34.      --aa             Specifies static mode, in which undefined references
  35.                     generate errors.
  36.  
  37.      --BB _a_r_g_u_m_e_n_t    Specifies archives and symbols.  _a_r_g_u_m_e_n_t can be one of
  38.                     the following values:
  39.  
  40.                     ssttaattiicc         Directs aabbiilldd to look only for static
  41.                                    archives during the link phase.
  42.  
  43.                     ddyynnaammiicc        Directs aabbiilldd to look for Dynamic Shared
  44.                                    Objects (DSOs) first, then static
  45.                                    archives, during the link phase.
  46.  
  47.                                    The--BB ssttaattiicc and --BB ddyynnaammiicc options
  48.                                    serve as toggles and can be specified
  49.                                    multiple times on a command line.
  50.  
  51.                     ssyymmbboolliicc       When building a DSO, directs aabbiilldd to
  52.                                    bind references to global symbols to
  53.                                    their definitions within the object.
  54.  
  55.                     eexxppoorrtt [[=_n_a_m_e_s]]
  56.                                    When creating a DSO, indicates that
  57.                                    symbols from the next object, archive,
  58.                                    or DSO are exported from the DSO being
  59.                                    created.  This is the default for an
  60.                                    object but not for an archive or DSO.
  61.  
  62.                                    When used with the optional _n_a_m_e_s
  63.                                    arguemtn, marks the symbols given by the
  64.                                    list of _n_a_m_e_s as exported.  If any
  65.                                    symbols are exported by this mechanism,
  66.                                    all unspecified symbols are
  67.                                    automatically hidden.
  68.  
  69.                     eexxppoorrttss__ffiillee==_f_i_l_e_n_a_m_e
  70.                                    When creating a DSO, specifies the file
  71.                                    that contains a list of symbols that
  72.                                    should be exported.  Any symbols not
  73.                                    specifically exported are automatically
  74.                                    hidden.
  75.  
  76.                     hhiiddee [=_n_a_m_e_s]]  When creating a DSO, indicates that
  77.                                    symbols from the next object, archive,
  78.                                    or DSO are hidden in the DSO being
  79.                                    created.  This is the default for an
  80.                                    archive or DSO but not for an object.
  81.  
  82.                                    When used with the optional _n_a_m_e
  83.                                    argument, marks the symbols given by the
  84.                                    list of _n_a_m_e_s as hidden.  Ignored if any
  85.                                    symbols are exported by the eexxppoorrtt==_n_a_m_e_s
  86.                                    option or eexxppoorrttss__ffiillee==_f_i_l_e_n_a_m_e option.
  87.  
  88.                     hhiiddeess__ffiillee==_f_i_l_e_n_a_m_e
  89.                                    When creating a DSO, specifies the file
  90.                                    that contains a list of symbols that
  91.                                    should be hidden.  Ignored if any
  92.                                    symbols are exported by the eexxppoorrtt==_n_a_m_e_s
  93.                                    option or eexxppoorrttss__ffiillee==_f_i_l_e_n_a_m_e option.
  94.  
  95.                     oobbjjeeccttlliisstt==_f_i_l_e_n_a_m_e
  96.                                    Specifies the file that contains the
  97.                                    object files to be linked.
  98.  
  99.                     rrppaatthh==_p_a_t_h     Specifies the path name to use when
  100.                                    linking the IRIX cccc sshhaarreedd option, or
  101.                                    when using the aabbiilldd --GG option. _p_a_t_h is
  102.                                    a directory.  The dynamic linker
  103.                                    searches the named directory first.
  104.  
  105.                     nnoolliibbrraarryyrreeppllaacceemmeenntt
  106.                                    Turns on a flag in the dynamic section
  107.                                    so that rrlldd does not allow execution
  108.                                    time or runtime changing of the path
  109.                                    (except for super user) to find the
  110.                                    DSOs.  Typically, this option is used
  111.                                    for security purposes on system
  112.                                    utilities.
  113.  
  114.      --dd _l_i_n_k        Directs the type of linking.  _l_i_n_k can be yy or nn.  If
  115.                     _l_i_n_k is set to nn, aabbiilldd uses static linking.
  116.                     Statically linked executable files do not conform to
  117.                     the MIPS ABI.  If _l_i_n_k is set to yy, aabbiilldd uses dynamic
  118.                     linking (the default) to create a dynamic executable
  119.                     file.
  120.  
  121.      --ee_e_p_s_y_m        Sets entry point to _e_p_s_y_m.
  122.  
  123.      --GG             Directs aabbiilldd to produce a DSO.  This option is used
  124.                     when generating a DSO (as opposed to a dynamic
  125.                     executable file).  When using the --GG option, you can
  126.                     also specify the output file name and the shared object
  127.                     name (_s_o_n_a_m_e), as in the following:
  128.  
  129.                     --oo _f_i_l_e..ssoo
  130.  
  131.                     --WWll,, --ssoonnaammee, _f_i_l_e..ssoo
  132.  
  133.      --II_n_a_m_e         Specifies an interpreter to be linked with the aa..oouutt
  134.                     file.
  135.  
  136.      --LL_p_a_t_h         Adds _p_a_t_h to library search directories.
  137.  
  138.      --ll_x            Searches the specified library.
  139.  
  140.      --mm             Produces a memory map.
  141.  
  142.      --oo_o_u_t_f_i_l_e      Names the output file.
  143.  
  144.      --QQ _i_d          Suppresses or generates compiler identification in
  145.                     output.  _i_d can be yy or nn.  If _i_d is set to nn compiler
  146.                     identification is suppressed; when _i_d is set to yy
  147.                     compiler identification is generated.
  148.  
  149.      --rr             Combines object files into a relocatable object file.
  150.  
  151.      --ss             Strips symbolic debugging information.
  152.  
  153.      --tt             Suppresses warning about multiple defined symbols of
  154.                     different sizes.
  155.  
  156.      --uu_s_y_m_n_a_m_e      Enters the named symbol as an undefined symbol.
  157.  
  158.      --vv             Indicates verbose mode.
  159.  
  160.      --VV             Directs aabbiilldd to produce a version identifier string.
  161.  
  162.      --XX _a_r_g         Specifies data.  _a_r_g can have the following values:
  163.  
  164.                     rreeaaddwwrriittee__ccoonnsstt
  165.                          Directs aabbiilldd to place the contents of constant
  166.                          data in a writable segment of memory. This is the
  167.                          default.
  168.  
  169.                     rreeaaddoonnllyy__ccoonnsstt
  170.                          Directs aabbiilldd to place the contents of constant
  171.                          data in a read-only segment of memory.  Use this
  172.                          option when you generate programs that will be
  173.                          redistributed in on-site linkable object code as
  174.                          well as binary form.  Some of the other ABI
  175.                          platforms support only this behavior.
  176.  
  177.                     xxppgg  Directs the compiler to set the global variable
  178.                          ____xxppgg44 to 1.  This value indicates that if there
  179.                          is a conflict, libraries should provide behavior
  180.                          compatible with the _X/_O_p_e_n _S_i_n_g_l_e _U_N_I_X(_T_M)
  181.                          _S_p_e_c_i_f_i_c_a_t_i_o_n rather than the default traditional
  182.                          behavior.
  183.  
  184.                     3322   Directs aabbiilldd to generate a 32-bit object.  This
  185.                          is the default. Defaults to --XX mmiippss11.
  186.  
  187.                     6644   Directs aabbiilldd to generate a 64-bit object.
  188.                          Defaults to --XX mmiippss33.
  189.  
  190.                     mmiippss11
  191.                          Directs aabbiilldd to generate code using the MIPS I
  192.                          instruction set of the R2000/R3000 RISC
  193.                          architecture.  Defaults to --XX 3322.
  194.  
  195.                     mmiippss22
  196.                          Directs aabbiilldd to use the MIPS II instruction set
  197.                          (MIPS 1 + R4000 specific extensions) to generate
  198.                          code.  Defaults to --XX 3322.
  199.  
  200.                     mmiippss33
  201.                          Directs aabbiilldd to use the MIPS III (R4000)
  202.                          instruction set to generate code. Defaults to --XX
  203.                          6644.
  204.  
  205.                     mmiippss44
  206.                          Directs aabbiilldd to use the MIPS IV
  207.                          (R10000,R5000,R8000) instruction set to generate
  208.                          code. Defaults to --XX 6644.
  209.  
  210.      --zz _s_y_m         Handles symbols.  If _s_y_m is set to ddeeffss aabbiilldd forces
  211.                     fatal errors for undefined symbols at the end of the
  212.                     link (default when building an executable file).  If
  213.                     _s_y_m is nnooddeeffss aabbiilldd allows undefined symbols (default
  214.                     when building a DSO).  If _s_y_m is tteexxtt in dynamic mode,
  215.                     it forces a fatal error if relocations against
  216.                     unwritable, allocatable sections remain.
  217.  
  218.      --WWll,,_a_r_g_s[[,,_a_r_g_l_i_s_t]
  219.                     This IRIX-specific option passes SGI specific options
  220.                     to the underlying link command.
  221.  
  222. NNOOTTEESS
  223.      The options described in the previous section indicate a space
  224.      character between options and arguments.  This is in accordance with
  225.      X/Open recommendations for portable applications.  aabbiilldd also supports
  226.      placing its  argument in the same string with no space.  If the
  227.      argument is optional, no space is allowed and this is reflected in the
  228.      previous descriptions of options.
  229.  
  230.      When aabbiilldd is used, the only library in the default search path is
  231.      //uussrr//lliibb//aabbii.  If //uussrr//lliibb is searched, an ABI binary file is not
  232.      built.
  233.  
  234.      Only the following object size/instruction set combinations are
  235.      allowed:
  236.  
  237.      * --XX 3322 and --XX mmiippss11
  238.  
  239.      * --XX 3322 and --XX mmiippss22
  240.  
  241.      * --XX 6644 and --XX mmiippss33
  242.  
  243.      * --XX 6644 and --XX mmiippss44
  244.  
  245. FFIILLEESS
  246.      //uussrr//lliibb//aabbii//ssggiilldd..ccffgg
  247.  
  248.      //uussrr//lliibb//aabbii                       ABI libraries and configuration
  249.                                         files
  250.  
  251.      //uussrr//lliibb6644//aabbii                     ABI libraries
  252.  
  253.      //uussrr//lliibb6644//mmiippss33//aabbii               ABI libraries
  254.  
  255.      //uussrr//lliibb6644//mmiippss44//aabbii               ABI libraries
  256.  
  257.      //uussrr//iinncclluuddee//aabbii                   Special ABI include files
  258.  
  259.      //uussrr//lliibb//aabbii//sseettuupp                 aabbiilldd setup file
  260.  
  261.      //uussrr//lliibb//aabbii//ssggiilldd..ccffgg             IRIX aabbiilldd config file
  262.  
  263. SSEEEE AALLSSOO
  264.      aabbiicccc(1), cchheecckk__aabbii__ccoommpplliiaannccee(1), cchheecckk__aabbii__iinntteerrffaaccee(1),
  265.      cchheecckk__ffoorr__ssyyssccaallllss(1),
  266.      aabbii(5), ddssoo(5)
  267.      _M_I_P_S _P_r_o_c_e_s_s_o_r _A_B_I _C_o_n_f_o_r_m_a_n_c_e _G_u_i_d_e
  268.      _U_N_I_X _S_y_s_t_e_m _V _R_e_l_e_a_s_e _4 _P_r_o_g_r_a_m_m_e_r'_s _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l
  269.  
  270.      This man page is available only online.
  271.